<?php

use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;

use Biz\Constants\User\UserConstants;

/**
 * User.
 *
 * @license [http://www.85do.com] [杭州永奥网络科技有限公司]
 * @copyright Copyright (c) 2018-2026 Hangzhou Yongao Technology Co., Ltd. All rights reserved.
 */
class User extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::create('user', function (Blueprint $table) {
            $table->bigIncrements('id');//BigID unsigned
            $table->string('type', 32)->default(UserConstants::TYPE_USER);
            $table->string('email', 255)->default('');//email（预留）
            $table->string('mobile', 62)->default('');//手机（主要）
            $table->string('avatar')->default(UserConstants::DEFAULT_AVATAR);//公共头像地址
            $table->string('nickname', 128)->default('');//昵称（预留）
            $table->string('username', 64)->default('');//用户名,唯一（预留）
            $table->string('password', 128)->default('');//密码（预留）
            $table->char('salt', 6)->default('');//密码佐料（预留）
            $table->tinyInteger('active')->default(1);//活跃状态，1正常，0禁用
            
            // 注意时间戳位数
            $table->timestamps();
            $table->softDeletes();

            // index
            $table->index('email');
            $table->index('mobile');
            $table->index('username');
            $table->index('nickname');
            $table->index('password');
        });
    }

    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        Schema::dropIfExists('user');
    }
}